/*
  学习目标：setState更新过程
  特点:
    1. setState是异步语法
    2. 连续调用setState更新, 默认会导致合并效果
  合并: 最后一个会覆盖前面所有的setState
 
*/
import React, { Component } from 'react';

export default class App extends Component {
  state = {
    count: 0,
  };

  handleAdd = () => {
    const { count } = this.state;
    this.setState({ count: count + 1 });
    this.setState({ count: count + 2 });
    // 合并: 最后一个会覆盖前面所有的setState
    this.setState({ count: count + 3 });
  };
  render() {
    // render执行了一次
    console.log('render  ----->  ');
    const { count } = this.state;
    return (
      <div>
        <h1>{count}</h1>
        <button onClick={this.handleAdd}>点我</button>
      </div>
    );
  }
}
